package org.monster.context.servlet;

import org.monster.context.core.parameter.HttpResponse;
import org.monster.context.core.request.HttpRequest;

import javax.servlet.http.HttpServlet;

/**
 * 生命周期
 */
public interface LifeCycle {

    /**
     * 服务
     *
     * @param request  请求
     * @param response 响应
     * @param servlet  服务者
     * @return 服务者
     */
    HttpServlet service(HttpRequest request, HttpResponse response,
                        HttpServlet servlet);

    /**
     * 服务
     *
     * @param request  请求
     * @param response 响应
     * @param clazz    类
     * @return 服务者
     */
    HttpServlet service(HttpRequest request, HttpResponse response,
                        Class<?> clazz);
}
